package com.stellar.circle.basic.entity;

import java.util.Date;
import java.io.Serializable;

/**
 * 校园墙帖子表(SPost)实体类
 *
 * @author Jqchan
 * @since 2025-05-17 19:23:36
 */
public class SPost implements Serializable {
    private static final long serialVersionUID = 665993226515814286L;
    
    /**
     * 帖子ID，主键
     */
    private Long id;
    
    /**
     * 发布用户ID（关联user表id，匿名时也需记录）
     */
    private Long userId;
    
    /**
     * 学校ID（关联school表id）
     */
    private Long schoolId;
    
    /**
     * 分类ID（关联s_post_category表id）
     */
    private Long categoryId;
    
    /**
     * 帖子标题
     */
    private String title;
    
    /**
     * 帖子内容
     */
    private String content;
    
    /**
     * 图片列表（JSON数组格式存储URL）
     */
    private String images;
    
    /**
     * 是否匿名：0-实名/1-匿名
     */
    private Integer isAnonymous;
    
    /**
     * 帖子状态：published-已发布/pending-审核中/hidden-隐藏
     */
    private String postStatus;
    
    /**
     * 浏览数
     */
    private Integer viewCount;
    
    /**
     * 点赞数
     */
    private Integer likeCount;
    
    /**
     * 评论数
     */
    private Integer commentCount;
    
    /**
     * 是否置顶：0-否/1-是
     */
    private Integer isPinned;
    
    /**
     * 置顶过期时间
     */
    private Date pinExpireTime;
    
    /**
     * 创建时间
     */
    private Date createTime;
    
    /**
     * 创建人
     */
    private String createBy;
    
    /**
     * 修改时间
     */
    private Date updateTime;
    
    /**
     * 修改人
     */
    private String updateBy;
    
    /**
     * 是否删除：1-删除/0-未删除
     */
    private Integer isDeleted;
    


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Long getSchoolId() {
        return schoolId;
    }

    public void setSchoolId(Long schoolId) {
        this.schoolId = schoolId;
    }

    public Long getCategoryId() {
        return categoryId;
    }

    public void setCategoryId(Long categoryId) {
        this.categoryId = categoryId;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getImages() {
        return images;
    }

    public void setImages(String images) {
        this.images = images;
    }

    public Integer getIsAnonymous() {
        return isAnonymous;
    }

    public void setIsAnonymous(Integer isAnonymous) {
        this.isAnonymous = isAnonymous;
    }

    public String getPostStatus() {
        return postStatus;
    }

    public void setPostStatus(String postStatus) {
        this.postStatus = postStatus;
    }

    public Integer getViewCount() {
        return viewCount;
    }

    public void setViewCount(Integer viewCount) {
        this.viewCount = viewCount;
    }

    public Integer getLikeCount() {
        return likeCount;
    }

    public void setLikeCount(Integer likeCount) {
        this.likeCount = likeCount;
    }

    public Integer getCommentCount() {
        return commentCount;
    }

    public void setCommentCount(Integer commentCount) {
        this.commentCount = commentCount;
    }

    public Integer getIsPinned() {
        return isPinned;
    }

    public void setIsPinned(Integer isPinned) {
        this.isPinned = isPinned;
    }

    public Date getPinExpireTime() {
        return pinExpireTime;
    }

    public void setPinExpireTime(Date pinExpireTime) {
        this.pinExpireTime = pinExpireTime;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public Integer getIsDeleted() {
        return isDeleted;
    }

    public void setIsDeleted(Integer isDeleted) {
        this.isDeleted = isDeleted;
    }
}
